window.path = 'http://139.199.75.210:8081'
window.yfx = {
  getQuery: function (name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);  //获取url中"?"符后的字符串并正则匹配
    var context = "";
    if (r != null)
      context = r[2];
    reg = null;
    r = null;
    return context == null || context == "" || context == "undefined" ? "" : context;
  },
  //输入框，文本框
  iptActive: function (class1, class2, classAct) {
    $(class1).on('focus', function () {
      $(this).siblings(class2).addClass(classAct)
    })
    $(class1).on('blur', function () {
      console.log('---')
      $(this).siblings(class2).removeClass(classAct)
    })
  }
}

// 手机
function isPhone(value) {
  return /^1[3|4|7|5|8][0-9]\d{8}$/.test(value);
}
// 中文
function isChinese(value) {
  return /[\u4e00-\u9fa5]/.test(value);
}
//中文姓名
function isChineseUser(value) {
  return /[^\u4E00-\u9FA5]/g.test(value);
}
// 是否为空
function required(value) {
  return $.trim(value).length != 0;
}
// 全数字
function isNum(value) {
  return /^[0-9]\d*$/.test(value);
}
// 全英文
function isEng(value) {
  return /^[a-zA-Z]*$/.test(value);
}
// 身份证
function isIdCard(value) {
  return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(value.toUpperCase());
}
// 英文、数字、汉字
function isUserName(value) {
  return /^[a-zA-Z0-9\u4E00-\u9FA5]+$/.test(value);
}
// 英文、数字
function isPwd(value) {
  return /^[a-zA-Z0-9\u4E00-\u9FA5]+$/.test(value);
}
//8-18 数字加字母
function isPwd02(value) {
  return /^(?![a-z]+$)(?!\d+$)[a-z0-9]{8,18}$/i.test(value);
}
//字符串转日期格式，strDate要转为日期格式的字符串
function getLocalTime(nS) {
  return new Date(parseInt(nS) * 1000).toLocaleString().substr(0, 17)
}
// alert(getLocalTime(1293072805));
//整数，小数
function isNumPoint(value) {
  return /^[0-9]+([.]{1}[0-9]+){0,1}$/.test(value);
}
// 身份证
function isIdCard(idCard) {
  //15位和18位身份证号码的正则表达式
  var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
  //如果通过该验证，说明身份证格式正确，但准确性还需计算
  if (regIdCard.test(idCard)) {
    if (idCard.length == 18) {
      var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); //将前17位加权因子保存在数组里
      var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); //这是除以11后，可能产生的11位余数、验证码，也保存成数组
      var idCardWiSum = 0; //用来保存前17位各自乖以加权因子后的总和
      for (var i = 0; i < 17; i++) {
        idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i];
      }
      var idCardMod = idCardWiSum % 11; //计算出校验码所在数组的位置
      var idCardLast = idCard.substring(17); //得到最后一位身份证号码
      //如果等于2，则说明校验码是10，身份证号码最后一位应该是X
      if (idCardMod == 2) {
        if (idCardLast == "X" || idCardLast == "x") {
          return true;
        } else {
          return false;
        }
      } else {
        //用计算出的验证码与最后一位身份证号码匹配，如果一致，说明通过，否则是无效的身份证号码
        if (idCardLast == idCardY[idCardMod]) {
          return true;
        } else {
          return false;
        }
      }
    }
  } else {
    return false;
  }
  return true;
}
//验证银行卡号
function isBankCard(bankCard) {
  var strBin = "10,18,30,35,37,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,58,60,62,65,68,69,84,87,88,94,95,98,99";
  var lastNum = bankCard.substr(bankCard.length - 1, 1); //取出最后一位（与luhm进行比较）
  var first15Num = bankCard.substr(0, bankCard.length - 1); //前15或18位
  var newArr = new Array();
  for (var i = first15Num.length - 1; i > -1; i--) { //前15或18位倒序存进数组
    newArr.push(first15Num.substr(i, 1));
  }
  var arrJiShu = new Array(); //奇数位*2的积 <9
  var arrJiShu2 = new Array(); //奇数位*2的积 >9
  var arrOuShu = new Array(); //偶数位数组
  for (var j = 0; j < newArr.length; j++) {
    if ((j + 1) % 2 == 1) { //奇数位
      if (parseInt(newArr[j]) * 2 < 9)
        arrJiShu.push(parseInt(newArr[j]) * 2);
      else
        arrJiShu2.push(parseInt(newArr[j]) * 2);
    } else //偶数位
      arrOuShu.push(newArr[j]);
  }
  var jishu_child1 = new Array(); //奇数位*2 >9 的分割之后的数组个位数
  var jishu_child2 = new Array(); //奇数位*2 >9 的分割之后的数组十位数
  for (var h = 0; h < arrJiShu2.length; h++) {
    jishu_child1.push(parseInt(arrJiShu2[h]) % 10);
    jishu_child2.push(parseInt(arrJiShu2[h]) / 10);
  }
  var sumJiShu = 0; //奇数位*2 < 9 的数组之和
  var sumOuShu = 0; //偶数位数组之和
  var sumJiShuChild1 = 0; //奇数位*2 >9 的分割之后的数组个位数之和
  var sumJiShuChild2 = 0; //奇数位*2 >9 的分割之后的数组十位数之和
  var sumTotal = 0;
  for (var m = 0; m < arrJiShu.length; m++) {
    sumJiShu = sumJiShu + parseInt(arrJiShu[m]);
  }
  for (var n = 0; n < arrOuShu.length; n++) {
    sumOuShu = sumOuShu + parseInt(arrOuShu[n]);
  }
  for (var p = 0; p < jishu_child1.length; p++) {
    sumJiShuChild1 = sumJiShuChild1 + parseInt(jishu_child1[p]);
    sumJiShuChild2 = sumJiShuChild2 + parseInt(jishu_child2[p]);
  }
  //计算总和
  sumTotal = parseInt(sumJiShu) + parseInt(sumOuShu) + parseInt(sumJiShuChild1) + parseInt(sumJiShuChild2);
  //计算Luhm值
  var k = parseInt(sumTotal) % 10 == 0 ? 10 : parseInt(sumTotal) % 10;
  var luhm = 10 - k;
  if (strBin.indexOf(bankCard.substring(0, 2)) == -1) {
    return false;
  }
  if (!(lastNum == luhm)) {
    return false;
  }
  return true;
}
// 邮件
function isEmail(value) {
  return /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(value);
}
function Http(params, susCallback, errorCallback) {
  if (params && susCallback) {
    $.ajax({
      type: params.type || 'GET',
      url: path + params.url,
      contentType: params.contentType || 'application/x-www-form-urlencoded',
      data: params.data || '',
      async: params.async || true,
      dataType: params.dataType || 'json',
      success: function (data, state, req) {
        if (susCallback) {
          susCallback(data, state, req)
        }
        if (errorCallback) {
          errorCallback ? errorCallback(data.msg) : $.sendWarning(data.msg, 2000);
        }
      }, error: function (data) {
        // errorCallback()
        $.sendSuccessToTop(data.msg, 2000)
      }
    });
  }
}
